A highly competitive mobile application marketplace and the consumerization of information technology have put tremendous pressure on mobile application developers to deliver high quality mobile user experiences for consumers. In this competitive environment, a small defect or failure of an application may lead to abandonment or poor consumer reviews for the application. Moreover, device fragmentation—created by hundreds of devices on the market using a variety of different mobile operating systems—multiples the amount of effort needed to provide adequate quality assurance. This additional quality assurance effort typically results in a time-consuming and costly development process. The difficulties associated with providing sufficient quality assurance may be further aggravated by faster release cycles for mobile applications, which may necessitate more stringent and efficient regression testing.
Furthermore, since user-interfaces for mobile applications may also change often, traditional user-interface testing tools—which may require significant investment to configure and set up—may rely on fragile methods for defining correct user-interface behavior.
Accordingly, failure to keep these user-interface testing tools in sync with the faster-release cycles for mobile applications may often lead to broken or ineffective test cases. In addition, many traditional user-interface test tools do not provide cross-platform support and may be difficult to integrate into mobile application developer tools and workflows. Thus, it is with respect to these and other considerations that the invention has been made.